Built-in Middleware (e.g., Static Files, Authentication)

Microsoft Technologies - এএসপি ডট নেট কোর (ASP.Net Core) Routing এবং Middleware |
242
242

ASP.NET Core এর Middleware হলো সেই কম্পোনেন্টগুলো যা HTTP রিকোয়েস্ট এবং রেসপন্স প্রসেস করার জন্য ব্যবহৃত হয়। প্রতিটি Middleware একটি নির্দিষ্ট কাজ করে এবং তারা একে অপরের সঙ্গে কাজ করে যাতে পুরো অ্যাপ্লিকেশনটি সঠিকভাবে কাজ করতে পারে। ASP.NET Core অনেক ধরনের বিল্ট-ইন Middleware প্রদান করে যা বিভিন্ন কাজের জন্য ব্যবহার করা হয়।

এখানে কিছু গুরুত্বপূর্ণ Built-in Middleware এর উদাহরণ দেওয়া হলো, যেমন Static Files এবং Authentication Middleware।


Static Files Middleware

Static Files Middleware হলো ASP.NET Core-এর একটি built-in Middleware যা স্ট্যাটিক ফাইল (যেমন CSS, JavaScript, ইমেজ, ফন্টস) সার্ভ করতে ব্যবহৃত হয়। এটি সাধারণত wwwroot ফোল্ডারের মধ্যে স্টোর করা ফাইলগুলিকে ওয়েব ব্রাউজারে সরাসরি পাঠায়।

Static Files Middleware কনফিগারেশন

ASP.NET Core অ্যাপ্লিকেশনটিতে wwwroot ফোল্ডারে স্ট্যাটিক ফাইল রাখতে হয়, এবং আপনি Startup.cs ফাইলে Static Files Middleware কনফিগার করতে পারেন।

Startup.cs ফাইলে Static Files Middleware কনফিগার করার উদাহরণ:

public class Startup
{
    public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
    {
        // Development environment এ error pages দেখানোর জন্য
        if (env.IsDevelopment())
        {
            app.UseDeveloperExceptionPage();
        }
        else
        {
            app.UseExceptionHandler("/Home/Error");
            app.UseHsts();
        }

        // Static files middleware যোগ করা
        app.UseStaticFiles();

        // অন্যান্য middleware গুলি
        app.UseRouting();
        app.UseAuthorization();

        app.UseEndpoints(endpoints =>
        {
            endpoints.MapControllerRoute(
                name: "default",
                pattern: "{controller=Home}/{action=Index}/{id?}");
        });
    }
}

এখানে, app.UseStaticFiles(); স্ট্যাটিক ফাইল সার্ভ করার জন্য Middleware কে অ্যাকটিভেট করে। এখন, wwwroot ফোল্ডারের ভিতরে থাকা ফাইলগুলো ব্রাউজারে সরাসরি অ্যাক্সেস করা যাবে। যেমন:


Authentication Middleware

Authentication Middleware হলো ASP.NET Core-এর আরেকটি গুরুত্বপূর্ণ built-in Middleware যা অ্যাপ্লিকেশনের মধ্যে ব্যবহারকারীর পরিচয় যাচাই করতে ব্যবহৃত হয়। এটি Cookie Authentication, JWT Bearer Tokens, অথবা OAuth এর মতো প্রক্রিয়া ব্যবহার করতে পারে। Authentication Middleware অ্যাপ্লিকেশনের একাধিক জায়গায় ব্যবহারকারীর লগইন, সাইন-আপ এবং লগআউট প্রক্রিয়া পরিচালনা করে।

Authentication Middleware কনফিগারেশন

ASP.NET Core অ্যাপ্লিকেশনটিতে Authentication Middleware কনফিগার করার জন্য, আপনাকে Startup.cs ফাইলে যথাযথ সেটিংস কনফিগার করতে হবে। উদাহরণস্বরূপ, Cookie Authentication কনফিগারেশন করা যাক:

Startup.cs ফাইলে Cookie Authentication কনফিগার করার উদাহরণ:

public class Startup
{
    public void ConfigureServices(IServiceCollection services)
    {
        // Authentication service কনফিগার করা (cookie authentication)
        services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme)
                .AddCookie(options =>
                {
                    options.LoginPath = "/Account/Login"; // লগইন পাথ
                    options.AccessDeniedPath = "/Account/AccessDenied"; // অ্যাক্সেস ডিনাইড পাথ
                });

        // অন্যান্য সেবা কনফিগারেশন
        services.AddControllersWithViews();
    }

    public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
    {
        // Development environment এ error pages দেখানোর জন্য
        if (env.IsDevelopment())
        {
            app.UseDeveloperExceptionPage();
        }
        else
        {
            app.UseExceptionHandler("/Home/Error");
            app.UseHsts();
        }

        // Static files middleware
        app.UseStaticFiles();

        // Authentication middleware
        app.UseAuthentication();  // Authentication middleware কনফিগার করা

        // Authorization middleware
        app.UseAuthorization();

        app.UseRouting();

        app.UseEndpoints(endpoints =>
        {
            endpoints.MapControllerRoute(
                name: "default",
                pattern: "{controller=Home}/{action=Index}/{id?}");
        });
    }
}

এখানে, app.UseAuthentication(); Authentication Middleware কে সক্রিয় করে, যা সমস্ত রিকোয়েস্টে ব্যবহারকারীর লগইন বা টোকেন যাচাই করবে।

Cookie Authentication কনফিগারেশন:

উপরের কনফিগারেশনে AddCookie ব্যবহার করা হয়েছে, যা কুকি বেসড Authentication প্রক্রিয়া ব্যবহারের জন্য। যখন ব্যবহারকারী লগইন করবেন, তখন একটি কুকি তৈরি হবে যা সার্ভারের সঙ্গে যোগাযোগ করে ব্যবহারকারীর সেশন চিহ্নিত করবে।


অন্যান্য Built-in Middleware উদাহরণ

ASP.NET Core আরও অনেক Built-in Middleware সরবরাহ করে, যা আপনাকে বিভিন্ন প্রয়োজনীয় কাজ করতে সাহায্য করে। এর মধ্যে কিছু গুরুত্বপূর্ণ Middleware হলো:

  • UseRouting(): রাউটিং এবং URL ম্যাপিং পরিচালনা করে।
  • UseAuthorization(): ব্যবহারকারীর অনুমতি যাচাই করে এবং প্রিভিলেজ অনুযায়ী অ্যাক্সেস কন্ট্রোল করে।
  • UseSession(): সেশন ডেটা পরিচালনা করে, যেমন ব্যবহারকারী তথ্য সংরক্ষণ।
  • UseHttpsRedirection(): HTTP রিকোয়েস্টকে HTTPS-এ রিডিরেক্ট করে, নিরাপত্তা বৃদ্ধি করার জন্য।
  • UseCors(): Cross-Origin Resource Sharing (CORS) কনফিগারেশন সাপোর্ট করে, যা API থেকে বিভিন্ন ডোমেইন থেকে অ্যাক্সেস নির্ধারণ করতে ব্যবহৃত হয়।

সারাংশ

ASP.NET Core তে Built-in Middleware গুলি সিস্টেমের বিভিন্ন অংশ যেমন স্ট্যাটিক ফাইল, Authentication, Routing, Authorization ইত্যাদি পরিচালনা করতে সাহায্য করে। Static Files Middleware স্ট্যাটিক ফাইল সার্ভ করার জন্য ব্যবহৃত হয়, এবং Authentication Middleware ব্যবহারকারীর লগইন এবং সেশন ম্যানেজমেন্ট পরিচালনা করে। ASP.NET Core-এর Middleware সিস্টেমটি অত্যন্ত ফ্লেক্সিবল এবং কাস্টম Middleware তৈরি করার সুযোগও প্রদান করে, যা আপনাকে আপনার অ্যাপ্লিকেশন প্রয়োজন অনুযায়ী কাস্টমাইজ করতে সহায়তা করে।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion